package carritocompra;

import java.util.HashMap;
import libreria.Libro;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.testng.annotations.Test;

public class Prueba {
	
	protected final Log logger = LogFactory.getLog(getClass());
	
	@Test
	public void pruebaComprarLibro(){
		
		
//		 Escenario de la prueba.
		
		Carrito carrito = new Carrito();
		
		Libro libro1 = new Libro();
		Libro libro2 = new Libro();
		Libro libro3 = new Libro();
		Libro libro4 = new Libro();
		
		libro1.nombre = "Libro 1";
		libro2.nombre = "Libro 2";
		libro3.nombre = "Libro 3";
		libro4.nombre = "Libro 4";
		
	
		ServicioCatalogo servicioCatalogo = new ServicioCatalogo();
		
		servicioCatalogo.libros.add(libro1);
		servicioCatalogo.libros.add(libro2);
		servicioCatalogo.libros.add(libro3);
		
		carrito.cServicioStock = new ServicioStock();
		carrito.cServicioStock.stock.put(libro1, 10);
		carrito.cServicioStock.stock.put(libro2, 10);
		
		
		carrito.cServicioCatalogo = servicioCatalogo;
		

//		 Invocacion del programa.
		
		System.out.println(carrito.addLibro(libro4, 1));
		assert(!carrito.addLibro(libro4, 1)): "El libro 4 no existe en el catalogo debe devolver false";
		assert(carrito.addLibro(libro1, 1)): "El libro 1 existe en el catalogo debe devolver true";
		assert(!carrito.addLibro(libro1, 11)): "El libro 1 existe en el catalogo pero se piden mas libros de los que hay en stock debe devolver true";
		
//		Asercion de resultados.
		
	}

}
